perm filename MFPUT.LOG[FIG,DEK] blob
sn#800714 filedate 1985-09-02 generic text, type T, neo UTF8
This is METAFONT, WAITS Version 0.96 (preloaded base=plain 85.9.2) 2 SEP 1985 16:54
**\tracingall
*secondarydef t transum tt =
{secondarydef}
*begingroup save T; transform T;
*for z=origin,up,right:
* z transformed t + z transformed tt = z transformed T; endfor
* T endgroup enddef;
*show identity rotated 90 shifted (2,3) transum identity;
{show}
{((0,0,1,0,0,1))rotated(90)}
{((0,0,0,-1,1,0))shifted((2,3))}
transum->begingroup.save.T;transform.T;for.z=origin,up,right:z.transformed(EXPR
0)+z.transformed(EXPR1)=z.transformed.T;endfor.T.endgroup
(EXPR0)<-(2,3,0,-1,1,0)
(EXPR1)<-(0,0,1,0,0,1)
{begingroup}
{save}
{transform}
{for}
{loop value=(0,0)}
{((0,0))transformed((2,3,0,-1,1,0))}
{((0,0))transformed((0,0,1,0,0,1))}
{((2,3))+((0,0))}
{((0,0))transformed((xpart T,ypart T,xxpart T,xypart T,yxpart T,yypart T))}
{((2,3))=((xpart T,ypart T))}
## ypart T=3
#### ypart %CAPSULE1611=3
## xpart T=2
#### xpart %CAPSULE1611=2
{[repeat the loop]}
{loop value=(0,1)}
{((0,1))transformed((2,3,0,-1,1,0))}
{((0,1))transformed((0,0,1,0,0,1))}
{((1,3))+((0,1))}
{((0,1))transformed((2,3,xxpart T,xypart T,yxpart T,yypart T))}
{((1,4))=((xypart T+2,yypart T+3))}
## yypart T=1
#### ypart %CAPSULE1924=4
## xypart T=-1
#### xpart %CAPSULE1924=1
{[repeat the loop]}
{loop value=(1,0)}
{((1,0))transformed((2,3,0,-1,1,0))}
{((1,0))transformed((0,0,1,0,0,1))}
{((2,4))+((1,0))}
{((1,0))transformed((2,3,xxpart T,-1,yxpart T,1))}
{((3,4))=((xxpart T+2,yxpart T+3))}
## yxpart T=1
#### ypart %CAPSULE1525=4
## xxpart T=1
#### xpart %CAPSULE1525=3
{[repeat the loop]}
{restoring T}
{endgroup}
>> (2,3,1,-1,1,1)
! OK.
<recently read> ;
<*> ... 90 shifted (2,3) transum identity;
?
*show identity shifted (a,b) transum identity shifted(aa,bb);
{show}
{((0,0,1,0,0,1))shifted((a,b))}
{((0,0,1,0,0,1))shifted((aa,bb))}
transum->begingroup.save.T;transform.T;for.z=origin,up,right:z.transformed(EXPR
0)+z.transformed(EXPR1)=z.transformed.T;endfor.T.endgroup
(EXPR0)<-(a,b,1,0,0,1)
(EXPR1)<-(aa,bb,1,0,0,1)
{begingroup}
{save}
{transform}
{for}
{loop value=(0,0)}
{((0,0))transformed((a,b,1,0,0,1))}
{((0,0))transformed((aa,bb,1,0,0,1))}
{((a,b))+((aa,bb))}
{((0,0))transformed((xpart T,ypart T,xxpart T,xypart T,yxpart T,yypart T))}
{((linearform,linearform))=((xpart T,ypart T))}
## b=ypart T-bb
## a=-aa+xpart T
{[repeat the loop]}
{loop value=(0,1)}
{((0,1))transformed((linearform,linearform,1,0,0,1))}
{((0,1))transformed((aa,bb,1,0,0,1))}
{((linearform,linearform))+((aa,bb+1))}
{((0,1))transformed((xpart T,ypart T,xxpart T,xypart T,yxpart T,yypart T))}
{((xpart T,ypart T+2))=((linearform,linearform))}
## yypart T=2
## xypart T=0
{[repeat the loop]}
{loop value=(1,0)}
{((1,0))transformed((linearform,linearform,1,0,0,1))}
{((1,0))transformed((aa,bb,1,0,0,1))}
{((linearform,linearform))+((aa+1,bb))}
{((1,0))transformed((xpart T,ypart T,xxpart T,0,yxpart T,2))}
{((xpart T+2,ypart T))=((linearform,linearform))}
## yxpart T=0
## xxpart T=2
{[repeat the loop]}
{restoring T}
### -ypart T=-ypart %CAPSULE1559
### -xpart T=-xpart %CAPSULE1559
{endgroup}
>> (xpart %CAPSULE1559,ypart %CAPSULE1559,2,0,0,2)
### -ypart %CAPSULE1559=-b-bb
### -xpart %CAPSULE1559=-a-aa
! OK.
<recently read> ;
<*> ...b) transum identity shifted(aa,bb);
?
*show (2,3) transformed(identity shifted (a,b) transum identity shifted(aa,bb))
;
{show}
{((0,0,1,0,0,1))shifted((a,b))}
{((0,0,1,0,0,1))shifted((aa,bb))}
transum->begingroup.save.T;transform.T;for.z=origin,up,right:z.transformed(EXPR
0)+z.transformed(EXPR1)=z.transformed.T;endfor.T.endgroup
(EXPR0)<-(a,b,1,0,0,1)
(EXPR1)<-(aa,bb,1,0,0,1)
{begingroup}
{save}
{transform}
{for}
{loop value=(0,0)}
{((0,0))transformed((a,b,1,0,0,1))}
{((0,0))transformed((aa,bb,1,0,0,1))}
{((a,b))+((aa,bb))}
{((0,0))transformed((xpart T,ypart T,xxpart T,xypart T,yxpart T,yypart T))}
{((linearform,linearform))=((xpart T,ypart T))}
## b=ypart T-bb
## a=xpart T-aa
{[repeat the loop]}
{loop value=(0,1)}
{((0,1))transformed((linearform,linearform,1,0,0,1))}
{((0,1))transformed((aa,bb,1,0,0,1))}
{((linearform,linearform))+((aa,bb+1))}
{((0,1))transformed((xpart T,ypart T,xxpart T,xypart T,yxpart T,yypart T))}
{((xpart T,ypart T+2))=((linearform,linearform))}
## yypart T=2
## xypart T=0
{[repeat the loop]}
{loop value=(1,0)}
{((1,0))transformed((linearform,linearform,1,0,0,1))}
{((1,0))transformed((aa,bb,1,0,0,1))}
{((linearform,linearform))+((aa+1,bb))}
{((1,0))transformed((xpart T,ypart T,xxpart T,0,yxpart T,2))}
{((xpart T+2,ypart T))=((linearform,linearform))}
## yxpart T=0
## xxpart T=2
{[repeat the loop]}
{restoring T}
### -ypart T=-ypart %CAPSULE1982
### -xpart T=-xpart %CAPSULE1982
{endgroup}
{((2,3))transformed((xpart %CAPSULE1982,ypart %CAPSULE1982,2,0,0,2))}
### -ypart %CAPSULE1982=-b-bb
### -xpart %CAPSULE1982=-a-aa
>> (a+aa+4,b+bb+6)
! OK.
<*> ...) transum identity shifted(aa,bb));
?
*show (2,3)transformed(identity shifted(a,b))
{show}
{((0,0,1,0,0,1))shifted((a,b))}
*+ (2,3)transformed(identity shifted(aa,bb))
{((2,3))transformed((a,b,1,0,0,1))}
{((0,0,1,0,0,1))shifted((aa,bb))}
*;
{((2,3))transformed((aa,bb,1,0,0,1))}
{((a+2,b+3))+((aa+2,bb+3))}
>> (a+aa+4,b+bb+6)
! OK.
<*> ;
?
*end
Here is how much of METAFONT's memory you used:
5 strings out of 696
31 string characters out of 9151
5710 words of memory out of 60001
525 symbolic tokens out of 2100
2i,60n,0r,3p,82b stack positions out of 30i,100n,300r,150p,500b